// filter.h

#ifndef FILTER_H
#define FILTER_H

#include <visibility.h>

// filter interface

template<typename T>
struct __EXPORT Filter
{
	virtual ~Filter(){}
	virtual T update(T input) = 0;
	virtual T operator()() = 0;
	virtual void set(T input) = 0;
};

#endif
